<?php
/**
 * Implenta las funciones necesarias para gestionar cristal
 *
 * @author Daniel Cardoza, Gary Dos Santos, Freddy Rodriguez
 */
class DBCristalDAO {

    private $DBConn = null;

    public function  __construct() {
        $conexion = new conexion();
        $this->DBConn = $conexion->setConnect();
    }

    /**
     *Devuelve el precio del id del cristal que entra por parametro
     *
     * @param <int> $id
     * @return <int> $fila['CCR_PRECIO']
     * @return <bool> false
     * @test
     *
     */
    public function getPrecio( $id ) {
        $this->DBConn->consulta( "SELECT CCR_PRECIO
                                FROM costo_cristal
                                WHERE CCR_ID = $id
                                AND CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CCR_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del id del cristal que entra por parametro
     *
     * @param <int> $id
     * @return <int> $fila['CCR_PRECIO']
     * @return <bool> false
     * @test
     *
     */
    public function getPrecioPorTodo( $nombre, $color, $espesor ) {
        $this->DBConn->consulta( "SELECT CCR_PRECIO
                                FROM costo_cristal
                                WHERE CCR_NOMBRE = '$nombre'
                                AND CCR_COLOR = '$color'
                                AND CCR_ESPESOR = '$espesor'
                                AND CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CCR_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del canto pulido dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioCantoPulido( $CTV_NOMBRE, $CTV_ESPESOR ) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_NOMBRE = '$CTV_NOMBRE'
                                AND CTV_ESPESOR = $CTV_ESPESOR
                                AND CTV_TIPO = 5
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return number_format( $fila['CTV_PRECIO'], 2, ",", "." );
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del bisel dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioBisel( $CTV_NOMBRE, $CTV_ESPESOR ) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_NOMBRE = '$CTV_NOMBRE'
                                AND CTV_ESPESOR = $CTV_ESPESOR
                                AND CTV_TIPO = 4
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return number_format( $fila['CTV_PRECIO'], 0, ",", "." );
        } else {
            return false;
        }

    }


    /**
     *Devuelve el precio de la instalacion del id de la ventana que entra por parametro
     *
     * @param <int> $id
     * @return <int> $fila['CSI_PRECIO']
     * @return <bool> false
     * @test
     *
     */
    public function getInstalacion( $nombre ) {
        $this->DBConn->consulta( "SELECT CSI_PRECIO
                            FROM costo_suministro_instalacion
                            WHERE CSI_NOMBRE = '$nombre'
                            AND CSI_TIPO = 1
                            AND CSI_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CSI_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del bisel dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioEsmerilado( $CTV_ID ) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_ID = $CTV_ID
                                AND CTV_TIPO = 3
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return number_format( $fila['CTV_PRECIO'], 2, ",", "." );
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del perforaciones dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioPerforaciones( ) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_TIPO = 6
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return number_format( $fila['CTV_PRECIO'], 2, ",", "." );
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del tacas para bano dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioTacasBanos( ) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_TIPO = 7
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return number_format( $fila['CTV_PRECIO'], 2, ",", "." );
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del tacas para bano dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioTacasFijos( ) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_TIPO = 8
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return number_format( $fila['CTV_PRECIO'], 2, ",", "." );
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del tacas para bano dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioTacasCurvas( ) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_TIPO = 9
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return number_format( $fila['CTV_PRECIO'], 2, ",", "." );
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del tacas para bano dependeiendo del nombre y el espesor
     *
     * @param string $CTV_NOMBRE
     * @param int $CTV_ESPESOR
     * @return int $fila['CCR_PRECIO']
     * @return bool false
     * @test
     *
     */
    public function getPrecioTrabajo($id) {
        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                FROM costo_trabajos_varios
                                WHERE CTV_ID = $id
                                AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CTV_PRECIO'];
        } else {
            return false;
        }

    }


    /**
     * Setea un bloque con la informacion del cristal
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockTrabajos( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT *
                                FROM costo_trabajos_varios
                                WHERE CTV_STATUS = 1
                                ORDER BY CTV_TIPO" );

        while ( $fila = $this->DBConn->extraer_registro() ) {

            if( $fila['CTV_TIPO'] == "3" ) {
                $fila['CTV_TIPO'] = "ESMERILADO";
            } else if( $fila['CTV_TIPO'] == "4" ) {
                $fila['CTV_TIPO'] = "BISEL";
            } else if( $fila['CTV_TIPO'] == "5" ) {
                $fila['CTV_TIPO'] = "CANTO PULIDO";
            } else if( $fila['CTV_TIPO'] == "6" ) {
                $fila['CTV_TIPO'] = "PERFORACIONES";
            } else if( $fila['CTV_TIPO'] == "7" ) {
                $fila['CTV_TIPO'] = "TACAS PARA PTAS DE BANO";
            } else if( $fila['CTV_TIPO'] == "8" ) {
                $fila['CTV_TIPO'] = "TACAS PARA FIJOS";
            } else if( $fila['CTV_TIPO'] == "9" ) {
                $fila['CTV_TIPO'] = "TACAS CURVAS";
            }

            $fila['CTV_PRECIO'] = number_format( $fila['CTV_PRECIO'], 2, ",", "." );
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     *Actualiza un Trabajo
     *
     * @param <Accesorio> $accesorio
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function updateTrabajos() {
        extract($_GET);

        $CTV_PRECIO = doubleval(str_replace(".","",$CTV_PRECIO));
        $CTV_PRECIO = doubleval(str_replace(",",".",$CTV_PRECIO));

        if( $CTV_ESPESOR != "" ) {
            $str =  "UPDATE costo_trabajos_varios
                    SET CTV_NOMBRE = '$CTV_NOMBRE',
                    CTV_ESPESOR = '$CTV_ESPESOR',
                    CTV_PRECIO = $CTV_PRECIO
                    WHERE CTV_ID = $id" ;
        } else {
            $str =  "UPDATE costo_trabajos_varios
                    SET CTV_NOMBRE = '$CTV_NOMBRE',
                    CTV_PRECIO = $CTV_PRECIO
                    WHERE CTV_ID = $id" ;
        }

        $this->DBConn->consulta($str);

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *modifica todos los precios en un porcentaje dado
     *
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function updatePrecioPorPorcentajeTrabajos() {
        extract($_GET);

        $porcentaje = $porcentaje/100;
        $this->DBConn->consulta( "UPDATE costo_trabajos_varios
                                SET CTV_PRECIO = CTV_PRECIO + (CTV_PRECIO * $porcentaje)
                                WHERE CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Agrega un CostoTrabajos
     *
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function setCostoTrabajos() {
        extract($_GET);

        $CTV_PRECIO = doubleval(str_replace(".","",$CTV_PRECIO));
        $CTV_PRECIO = doubleval(str_replace(",",".",$CTV_PRECIO));


        if( $CTV_ESPESOR != "" ) {
            $str =  "INSERT INTO costo_trabajos_varios (CTV_NOMBRE, CTV_ESPESOR, CTV_PRECIO, CTV_TIPO)
                                VALUES ('$CTV_NOMBRE','$CTV_ESPESOR', $CTV_PRECIO, $CTV_TIPO)" ;
        } else {
            $str =  "INSERT INTO costo_trabajos_varios (CTV_NOMBRE, CTV_PRECIO, CTV_TIPO)
                                VALUES ('$CTV_NOMBRE', $CTV_PRECIO, $CTV_TIPO)" ;
        }

        $this->DBConn->consulta( $str );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Elimina un Cristal
     *
     * @param <int> $id
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function eliminarTrabajo($id) {

        $this->DBConn->consulta( "UPDATE costo_trabajos_varios
                                SET CTV_STATUS = 0
                                WHERE CTV_ID = $id" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del id del accesorio que entra por parametro y del espesor,
     * este espesori es el id del la fila que contiene el espesor
     *
     * @param <int> $id
     * @param <int> $color
     * @return <Array> $fila
     * @return <bool> false
     * @test
     *
     */
    public function getPrecioPorEspesor( $id , $espesor ) {
        $this->DBConn->consulta( "SELECT CCR_PRECIO
                                FROM costo_cristal
                                WHERE CCR_COLOR IN(
                                SELECT CCR_COLOR
                                FROM costo_cristal
                                WHERE CCR_ID = $id)
                                AND CCR_NOMBRE IN(
                                SELECT CCR_NOMBRE
                                FROM costo_cristal
                                WHERE CCR_ID = $id)
                                AND CCR_ESPESOR IN (
                                SELECT PVC_ESPESOR
                                FROM puerta_ventana_cristal
                                WHERE PVC_ID = $espesor)
                                AND CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila;
        } else {
            return false;
        }

    }

    /**
     * Setea un bloque con la informacion del cristal
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockNombre( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT CCR_ID, CCR_NOMBRE
                            FROM costo_cristal
                            WHERE CCR_STATUS = 1
                            GROUP BY CCR_NOMBRE
                            ORDER BY CCR_ID" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del color del cristal
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockColor( $plantillaCON , $block, $id ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT CCR_ID, CCR_COLOR
                            FROM costo_cristal
                            WHERE CCR_NOMBRE IN (
                            SELECT CCR_NOMBRE
                            FROM costo_cristal
                            WHERE CCR_ID = $id)
                            GROUP BY CCR_COLOR" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del espesor del cristal
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockEspesor( $plantillaCON , $block, $id ) {

        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT CCR_ID, CCR_ESPESOR
                            FROM costo_cristal
                            WHERE CCR_NOMBRE IN (
                            SELECT CCR_NOMBRE
                            FROM costo_cristal
                            WHERE CCR_ID = $id)
                            AND CCR_COLOR IN (
                            SELECT CCR_COLOR
                            FROM costo_cristal
                            WHERE CCR_ID = $id)" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion de esmerilado
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockEsmerilado( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT *
                            FROM costo_trabajos_varios
                            WHERE CTV_TIPO = 3
                            AND CTV_STATUS = 1" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del cristal
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlock( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT *
                            FROM costo_cristal
                            WHERE CCR_STATUS = 1
                            ORDER BY CCR_ID" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $fila['CCR_PRECIO'] = number_format( $fila['CCR_PRECIO'], 2, ",", "." );
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del bisel
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockBisel( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT *
                            FROM costo_trabajos_varios
                            WHERE CTV_TIPO = 4
                            AND CTV_STATUS = 1
                            GROUP BY CTV_NOMBRE" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     *Devuelve el color del id del cristal que entra por parametro
     *
     * @param <int> $id
     * @return <string> $fila['CCR_COLOR']
     * @return <bool> false
     * @test
     *
     */
    public function getColor( $id ) {
        $this->DBConn->consulta( "SELECT CCR_COLOR
                            FROM costo_cristal
                            WHERE CCR_ID = $id
                            AND CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CCR_COLOR'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el nombre del id del cristal que entra por parametro
     *
     * @param <int> $id
     * @return <string> $fila['CCR_NOMBRE']
     * @return <bool> false
     * @test
     *
     */
    public function getNombre( $id ) {
        $this->DBConn->consulta( "SELECT CCR_NOMBRE
                            FROM costo_cristal
                            WHERE CCR_ID = $id
                            AND CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CCR_NOMBRE'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el Contenido del id del cristal que entra por parametro
     *
     * @param <int> $id
     * @return <string> $fila['CCR_NOMBRE']
     * @return <bool> false
     * @test
     *
     */
    public function getContenido( $id ) {
        $this->DBConn->consulta( "SELECT CCR_CONTENIDO
                            FROM costo_cristal
                            WHERE CCR_ID = $id
                            AND CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CCR_CONTENIDO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el espesor del id del cristal que entra por parametro
     *
     * @param <int> $id
     * @return <string> $fila['CCR_ESPESOR']
     * @return <bool> false
     * @test
     *
     */
    public function getEspesor( $id ) {
        $this->DBConn->consulta( "SELECT CCR_ESPESOR
                            FROM costo_cristal
                            WHERE CCR_ID = $id
                            AND CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CCR_ESPESOR'];
        } else {
            return false;
        }

    }

    /**
     *Insertar un Cristal en la base de datos y lo asigna al id del presupuesto
     * que se pasa por parametro
     *
     * @param <Cristal> $cristal
     * @param <int> $PTO_ID
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function setCristal( Cristal $cristal , $PTO_ID ) {
        $alto = $cristal->getAlto();
        $ancho = $cristal->getAncho();
        $cantidad = $cristal->getCantidad();
        $color = $cristal->getColor();
        $contenido = $cristal->getContenido();
        $nombre = $cristal->getNombre();
        $precio = $cristal->getPrecio();
        $espesor  = $cristal->getEspesor();
        $posicion  = $cristal->getPosicion();
        $subTotal  = $cristal->calcularSubTotal();

        $this->DBConn->consulta( "INSERT INTO `cristal` (`CRT_NOMBRE`, `CRT_COLOR`, `CRT_CONTENIDO`,`CRT_ESPESOR`,
                                `CRT_ANCHO`, `CRT_ALTO`, `CRT_PRECIO`,`CRT_CANTIDAD`)
                                VALUES ('$nombre', '$color', '$contenido', $espesor, $ancho, $alto,
                $precio, $cantidad);" );

        $this->DBConn->consulta( "SELECT CRT_ID FROM Cristal
                        WHERE CRT_NOMBRE = '$nombre'
                        AND CRT_COLOR = '$color'
                        AND CRT_ESPESOR = $espesor
                        AND CRT_ANCHO = $ancho
                        AND CRT_ALTO = $alto
                        AND CRT_PRECIO = $precio
                        AND CRT_CANTIDAD = $cantidad
                        AND CRT_STATUS = 1
                        ORDER BY CRT_ID DESC " );

        $fila = $this->DBConn->extraer_registro();
        $id = $fila[ 'CRT_ID' ];

        $subTotal = $cristal->calcularSubTotal();
        $this->DBConn->consulta( "INSERT INTO detalle_presupuesto (DPR_SUB_TOTAL,DPR_PTO_ID,DPR_CRT_ID,DPR_POS)
                                VALUES ($subTotal, $PTO_ID, $id, '$posicion')" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Actualiza un Cristal
     *
     * @param $_POST $post
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function updateCristal() {
        extract($_GET);

        $CCR_PRECIO = doubleval(str_replace(".","",$CCR_PRECIO));
        $CCR_PRECIO = doubleval(str_replace(",",".",$CCR_PRECIO));

        $this->DBConn->consulta( "SELECT CCR_NOMBRE, CCR_COLOR
                                FROM costo_cristal
                                WHERE CCR_ID = $id;");

        $fila = $this->DBConn->extraer_registro();
        $nombreOld = $fila[ 'CCR_NOMBRE' ];
        $colorOld = $fila[ 'CCR_COLOR' ];
        $this->DBConn->consulta( "UPDATE costo_cristal
                                SET CCR_COLOR = '$CCR_COLOR'
                                WHERE CCR_COLOR = '$colorOld'
                                AND CCR_NOMBRE = '$nombreOld'" );

        $this->DBConn->consulta( "UPDATE costo_cristal
                                SET CCR_NOMBRE = '$CCR_NOMBRE'
                                WHERE CCR_NOMBRE = '$nombreOld'" );

        $this->DBConn->consulta( "UPDATE costo_cristal
                                SET CCR_PRECIO = $CCR_PRECIO,
                                CCR_CONTENIDO = '$CCR_CONTENIDO',
                                CCR_ESPESOR = $CCR_ESPESOR
                                WHERE CCR_ID = $id" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Elimina un Cristal
     *
     * @param <int> $id
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function eliminarCristal($id) {

        $this->DBConn->consulta( "UPDATE costo_cristal
                                SET CCR_STATUS = 0
                                WHERE CCR_ID = $id" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Agrega un costoCristal
     *
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function setCostoCristal() {
        extract($_GET);

        $CCR_PRECIO = doubleval(str_replace(".","",$CCR_PRECIO));
        $CCR_PRECIO = doubleval(str_replace(",",".",$CCR_PRECIO));

        $this->DBConn->consulta( "INSERT INTO costo_cristal (CCR_NOMBRE, CCR_COLOR, CCR_CONTENIDO
                                ,CCR_ESPESOR , CCR_PRECIO)
                                VALUES ('$CCR_NOMBRE','$CCR_COLOR', '$CCR_CONTENIDO',$CCR_ESPESOR,
                $CCR_PRECIO)" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *modifica todos los precios en un porcentaje dado
     *
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function updatePrecioPorPorcentaje() {
        extract($_GET);

        $porcentaje = $porcentaje/100;
        $this->DBConn->consulta( "UPDATE costo_cristal
                                SET CCR_PRECIO = CCR_PRECIO + (CCR_PRECIO * $porcentaje)
                                WHERE CCR_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

}
?>